//
//  CallWraper+public.h
//  CallWraper
//
//  Created by anjingxw@126.com on 2021/8/20.
//

#ifndef CallWraper_public_h
#define CallWraper_public_h
#import <Foundation/Foundation.h>
@protocol WebrtcUdpTransportOc <NSObject>
-(short)GetLocalHostPort;
-(bool)SetRemoteIPHostPort:(NSString*)ip port:(short)port; //对端的ip和端口
-(void)SetInfobirdTransport:(bool)infobirdTransport;
-(void)AudioPayload:(int)audioPayload; ////默认是rtp,infobirdTransport为true是udp
@end

@interface CallWraperOc : NSObject
+(CallWraperOc*)GetInstance;

- (void)Config:(bool)only_audio
           audio_codec_plname:(NSString*)audio_codec_plname
           call_out:(bool)call_out;
- (void)CreateCallAndAudioDevice;
- (void)Start;
- (void)Stop;

- (void)StartOnlySend;
- (void)StartOnlyRecv;

- (id<WebrtcUdpTransportOc>)AudioTransport;
- (id<WebrtcUdpTransportOc>)VideoTransport;

- (void)SendTelephoneEvent:(int)payload_type
            payload_frequency:(int) payload_frequency
            event:(int)event
            duration_ms:(int)duration_ms;
- (void)SendAgent:(NSString*)agetName;
- (bool)SetInputMute:(bool)mute;
- (int)GetSoundQuality;
- (void)Release;
@end

#endif /* CallWraper_public_h */
